In some conventional systems, such as in a single server system, pages are swapped to disk on demand by an Operating System or a Hypervisor. A Hypervisor or virtual machine manager (VMM) can be thought of as computer software, firmware and/or hardware that creates and runs virtual machines (VMs). In these conventional systems memory pages are copied from memory to disk by an operating system or a hypervisor when either of them reaches the limits of its memory allocation.
A problem is presented in that swapping pages from memory to disk is a relatively slow operation that has a significant impact on processor and input/output (I/O) resources and time, even more so when both the hypervisor and the operating system contained in its VMs swap memory at the same time.
A correlated problem is presented when identical pages are swapped from memory to disk. Two identical pages take the same time to swap, and two identical pages consume two different slots in a page file. When multiple servers with comparable workloads are considered the probability of having identical pages across the cloud environment is increased. This redundancy is another added resource waste in the paging process.